Skip to content

Dev experience: devcontainer, prek, Claude hooks, and docs overhaul#768

Merged
andykenward merged 16 commits into
mainfrom
pr/claude-improvements
May 31, 2026
Merged

Dev experience: devcontainer, prek, Claude hooks, and docs overhaul#768
andykenward merged 16 commits into
mainfrom
pr/claude-improvements

Conversation

@andykenward

Copy link
Copy Markdown
Owner

Summary

A developer-experience and documentation pass on the repo. No changes to the action's runtime behavior, inputs, or outputs — this is tooling and docs.

Dev container & tooling

  • Rebuild the devcontainer around a .devcontainer/Dockerfile (with a README.md and zshrc); install act and gh via Docker, switch install to npm, and bump engine versions.
  • Migrate the pre-commit framework from .pre-commit-config.yaml to prek (prek.toml), sharing one oxc-format-and-lint entrypoint.

Claude Code hooks (.claude/)

  • Move hook scripts from .github/hooks/ into .claude/scripts/, with .claude/settings.json as the single source of truth.
  • PostToolUse: format-and-lint-after-edit.sh (oxfmt + oxlint, feeds lint errors back) and type-check-after-edit.sh (whole-project tsc:check as an async asyncRewake hook — never blocks the edit).
  • Stop: stop-review-agents.sh prompts capturing session learnings in AGENTS.md (shared conventions) and auto-memory (user/project context).

Documentation

  • AGENTS.md restructured top-to-bottom for AI agents: Critical Rules, architecture/commands tables, task playbooks, conventions, and a dev-hooks section. Adds shared conventions (Markdown __dunder__ backticking, Dockerfile readability) and a rule requiring agents to keep both READMEs in sync with action.yml / delete/action.yml.
  • README.md & delete/README.md rewritten for first-time users: a Quick start with a copy-paste workflow, clearer setup with an > [!IMPORTANT] callout for the manually-created GitHub Environments requirement, and Inputs/Outputs as scannable tables. Pinned action refs keep the @<sha> #vX.Y.Z form so sync-readme-versions still updates them.

Test plan

  • prek hooks pass on every commit (trailing-whitespace, end-of-file, oxfmt + oxlint).
  • README example workflows mirror the canonical templates in .github/workflow-templates/.
  • All repo-relative links in the docs verified to resolve.

🤖 Generated with Claude Code

andykenward and others added 16 commits May 31, 2026 11:42
Wire PostToolUse hooks for Write/Edit/MultiEdit:
- format-and-lint-after-edit.sh: oxfmt + oxlint on the edited file,
  feeding lint errors back to the agent (exit 2)
- type-check-after-edit.sh: whole-project tsc:check as an asyncRewake
  hook, waking the agent on type errors without blocking the edit

Reconcile all references after moving hook scripts out of .github/hooks
into .claude/scripts (prek.toml, settings.json, AGENTS.md Hook Sync Rule,
and script header sync lists). The single source of truth is now
.claude/settings.json; the duplicate *.json reference files are removed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Reorganize top-to-bottom for agent consumption: front-loaded Critical
Rules, an architecture/path table, a commands table, task playbooks for
common changes, condensed conventions, and a dev-environment-hooks
section. No guidance dropped; every repo-relative link verified.

Promote two conventions from personal Claude memory into this shared,
checked-in doc so every contributor's agent picks them up:
- backtick-wrap __dunder__ path tokens in Markdown (formatter bolds them)
- keep distinct Dockerfile steps in separate RUN blocks over complex
  consolidation

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Restructure both action READMEs for newcomers:
- Add a Quick start with a minimal, copy-paste workflow (mirroring the
  official workflow templates) near the top
- Surface setup/prerequisites with an IMPORTANT callout for the
  manually-created GitHub Environments gotcha (deploy)
- Convert Inputs/Outputs from YAML blocks to scannable tables
- Reorganize sections into a logical first-read order; move URLs to
  reference-link definitions

Pinned action refs keep the @<sha> #vX.Y.Z form so sync-readme-versions
continues to update them.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add a Docs convention so AI agents update user-facing docs alongside
code: README.md mirrors action.yml and delete/README.md mirrors
delete/action.yml. Reinforced in three places — a convention rule, a new
step in the "Add an action input" playbook, and the Resources list (now
including delete/README.md). Notes that the pinned action refs are
auto-synced by sync-readme-versions, so the SHA/version isn't hand-edited.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented May 31, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: ae5c4ee

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@andykenward andykenward merged commit 37fadd6 into main May 31, 2026
10 checks passed
@andykenward andykenward deleted the pr/claude-improvements branch May 31, 2026 17:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant